package com.sptus.web.service;

import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.IService;
import com.sptus.common.core.domain.AjaxResult;
import com.sptus.system.domain.DeviceModel;
import com.sptus.system.domain.Equipment;
import com.sptus.system.domain.model.DevModel;
import com.sptus.system.domain.vo.AppInfo;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;

public interface CloudIEquipmentService extends IService<Equipment> {


    AjaxResult getEquipmentInfo(AppInfo appInfo, Equipment equipment);

    AjaxResult getInverterInfo(AppInfo appInfo, Equipment equipment);

    AjaxResult getEquipmentInfoData(AppInfo appInfo, Equipment equipment);

    HashMap<String, String> getEquipmentCity
            (String sn);

    ArrayList<HashMap<String, String>> getDevClassify(DevModel devModel);

    ArrayList<HashMap<String, String>> getHomeHead(DevModel devModel);

    ArrayList<HashMap<String, String>> getDevGeneration(DevModel devModel);

    HashMap<String, Object> getDevHealth(DevModel devModel);

    ArrayList<HashMap<String, Object>> getDevHealthFloat(DevModel devModel);

    ArrayList<HashMap<String, Object>> getDevAlarmList(DevModel devModel);

    void saveHomeHealth(HashMap<String, Object> devBG);

    HashMap<String, Object> selectListPage(DeviceModel deviceModel);

    ArrayList<HashMap<String, String>> getDevMap(List<Integer> number);

    ArrayList<HashMap<String, Object>> getEquipmentGenration();

    HashMap<String, Object> getHomeHealth(String number);

    ArrayList<HashMap<String, Object>> getDevTypeNum();

    List<Equipment> selectListInfo(QueryWrapper<Equipment> equipmentLambdaQueryWrapper);
}
